(defun cp (l) (if (null l) nil (cons (first l) (cp (rest l)))))
(let* ((l '(1 2)) (c (cp l)))
  (print '(same ptr))
  (print (eq l c))
  (print '(same val))
  (print (equal l c)))
